package com.jsmtr.rms.entity;

import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;


@Entity
@Table(name = "DoMS_User")
public class DoMSUser {

    @Id
    @Column(nullable = false, length = 50)
    private String id; // ID

    @Column(nullable = false, length = 50)
    private String fid; // 招聘流程ID

    @Column(nullable = true)
    private Date addDate; // 投递简历时间

    @Column(nullable = true)
    private Date changeDate; // 投简历以后修改简历的时间

    @Column(nullable = true)
    private Date zldate; // 资料审核录入时间

    @Column(nullable = true)
    private Date zsdate; // 背景调查录入时间

    @Column(nullable = true)
    private Date bddate; // 报到录入时间

    @Column(nullable = true)
    private Date tjdate; // 体检录入时间

    @Column(nullable = true)
    private Date sxdate; // 实习录入时间

    @Column(nullable = true)
    private Date qydate; // 签约录入时间

    @Column(nullable = true)
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date qlgettime; // 职业资格证(取得时间)

    @Column(nullable = true)
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date postgettime; // 专业技术职务(取得时间)

    @Column(nullable = true)
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date othdate; // 其他资格证(取得时间)

    @Column(nullable = true)
    private Date gwdate; // 岗位分配录入时间

    @Column(nullable = true)
    private Date fqdate; // 放弃时间

    @Column(nullable = true, length = 50)
    private String gid; // 计划编排分组ID（避免面试评价表和面试组数据冗余）  关联 DoMSEvaluation  和    DoMSExaminer

    @Column(nullable = false, length = 5)
    private String num; // 面试人编号

    @Column(nullable = false, length = 20)
    private String starttime; // 面试开始时间

    @Column(nullable = false, length = 100)
    private String address; // 面试地点

    @Column(nullable = true, length = 100)
    private String examinername; // 面试组名称

    @Column(nullable = true)
    private Integer examinercount; // 面试组人数

    @Column(nullable = true, length = 100)
    private String evaluationname; // 评价表名称

    @Column(nullable = false, length = 50)
    private String userid; // 应聘者ID

    @Column(nullable = false)
    private Integer notice; // 是否通知应聘者

    @Column(nullable = true, length = 10)
    private String point; // 面试得分

    @Column(nullable = false, length = 10)
    private String result; // 面试通过情况（结果未生成;通过;未通过）

    @Column(nullable = true, length = 50)
    private String pointuser; // 已经评分的考官编号（,考官编号,考官编号,）

    @Column(nullable = true)
    private Date pointdate; // 统分时间

    @Column(nullable = true, length = 10)
    private String op7; // 报到结果是否公开（null/已公布/未公布）

    @Column(length = 4000)
    private String remark; //注意事项

    @Column(length = 500)
    private String scoringrules;  //评分规则


    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getFid() {
        return fid;
    }

    public void setFid(String fid) {
        this.fid = fid;
    }

    public String getGid() {
        return gid;
    }

    public void setGid(String gid) {
        this.gid = gid;
    }

    public String getNum() {
        return num;
    }

    public void setNum(String num) {
        this.num = num;
    }

    public String getStarttime() {
        return starttime;
    }

    public void setStarttime(String starttime) {
        this.starttime = starttime;
    }

    public String getAddress() {
        return address;
    }

    public void setAddress(String address) {
        this.address = address;
    }

    public String getExaminername() {
        return examinername;
    }

    public void setExaminername(String examinername) {
        this.examinername = examinername;
    }

    public Integer getExaminercount() {
        return examinercount;
    }

    public void setExaminercount(Integer examinercount) {
        this.examinercount = examinercount;
    }

    public String getEvaluationname() {
        return evaluationname;
    }

    public void setEvaluationname(String evaluationname) {
        this.evaluationname = evaluationname;
    }

    public String getUserid() {
        return userid;
    }

    public void setUserid(String userid) {
        this.userid = userid;
    }

    public Integer getNotice() {
        return notice;
    }

    public void setNotice(Integer notice) {
        this.notice = notice;
    }

    public String getPoint() {
        return point;
    }

    public void setPoint(String point) {
        this.point = point;
    }

    public String getResult() {
        return result;
    }

    public void setResult(String result) {
        this.result = result;
    }

    public String getPointuser() {
        return pointuser;
    }

    public void setPointuser(String pointuser) {
        this.pointuser = pointuser;
    }

    public Date getPointdate() {
        return pointdate;
    }

    public void setPointdate(Date pointdate) {
        this.pointdate = pointdate;
    }

    public String getOp7() {
        return op7;
    }

    public void setOp7(String op7) {
        this.op7 = op7;
    }

    public String getRemark() {
        return this.remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }

    public String getScoringrules() {
        return this.scoringrules;
    }

    public void setScoringrules(String scoringrules) {
        this.scoringrules = scoringrules;
    }

    public Date getAddDate() {
        return addDate;
    }

    public void setAddDate(Date addDate) {
        this.addDate = addDate;
    }

    public Date getBddate() {
        return bddate;
    }

    public void setBddate(Date bddate) {
        this.bddate = bddate;
    }

    public Date getChangeDate() {
        return changeDate;
    }

    public void setChangeDate(Date changeDate) {
        this.changeDate = changeDate;
    }

    public Date getFqdate() {
        return fqdate;
    }

    public void setFqdate(Date fqdate) {
        this.fqdate = fqdate;
    }

    public Date getGwdate() {
        return gwdate;
    }

    public void setGwdate(Date gwdate) {
        this.gwdate = gwdate;
    }

    public Date getOthdate() {
        return othdate;
    }

    public void setOthdate(Date othdate) {
        this.othdate = othdate;
    }

    public Date getPostgettime() {
        return postgettime;
    }

    public void setPostgettime(Date postgettime) {
        this.postgettime = postgettime;
    }

    public Date getQlgettime() {
        return qlgettime;
    }

    public void setQlgettime(Date qlgettime) {
        this.qlgettime = qlgettime;
    }

    public Date getQydate() {
        return qydate;
    }

    public void setQydate(Date qydate) {
        this.qydate = qydate;
    }

    public Date getSxdate() {
        return sxdate;
    }

    public void setSxdate(Date sxdate) {
        this.sxdate = sxdate;
    }

    public Date getTjdate() {
        return tjdate;
    }

    public void setTjdate(Date tjdate) {
        this.tjdate = tjdate;
    }

    public Date getZldate() {
        return zldate;
    }

    public void setZldate(Date zldate) {
        this.zldate = zldate;
    }

    public Date getZsdate() {
        return zsdate;
    }

    public void setZsdate(Date zsdate) {
        this.zsdate = zsdate;
    }
}